/**
 * 删除单个字典项
 */
var delDict = function(id) {
	layer.confirm('确定删除吗？',
		{btn: ['确定','取消']},
		function() {
			$.ajax({
				url: '/Dict/doDelDict',
				type: 'post',
				async: true, //default: true
				data: {'id': id},
				dataType: 'json', // default: Intelligent Guess (xml, json, script, or html)
				success: function (data, textStatus, jqXHR) {
					if (data.status == 200) {
						location.reload()
					}
				}
			});	//ajax end
		}
	);	//layer end
}


/**
 * 修改单个字典项
 */
var editDict = function(id) {
	window.open('/Dict/editDict?id=' + id);
}


$(document).ready(function() {
	/**
	 * 全选/全不选字典项
	 */
	$('#allDict').click(function () {
		if ($(this).prop('checked')) {
			$(':checkbox[name="dict[]"]').prop('checked', true);
		} else {
			$(':checkbox[name="dict[]"]').prop('checked', false);
		}
	});


	/**
	 * 添加单个字典项
	 */
	$('#btn_addDict').click(function() {
		window.open('/Dict/addDict');
	});


	/**
	 * 批量添加字典项
	 */
	$('#btn_batchAddDict').click(function() {
		window.open('/Dict/batchAddDict');
	});


	/**
	 * 批量删除字典项
	 */
	$('#btn_batchDelDict').click(function() {
		//定义变量
		var id_list = [];

		//归集已选择的字典id
		$(':checkbox[name="dict[]"]:checked').each(function() {
			id_list.push($(this).val());
		});
		//console.log(id_list);

		//如果没有选择任何字典项，则提示用户
		if (JSON.stringify(id_list) == '[]') {
			layer.alert('至少要选择一条记录');
			return false;
		}

		//提示用户删除，并根据用户选择，请求后台删除
		layer.confirm('确定批量删除吗？',
			{btn: ['确定','取消']},
			function() {
				$.ajax({
					url: '/Dict/doBatchDelDict',
					type: 'post',
					async: true, //default: true
					data: {'id_list': id_list},
					dataType: 'json', // default: Intelligent Guess (xml, json, script, or html)
					success: function (data, textStatus, jqXHR) {
						if (data.status == 200) {
							location.reload();
						}
					}
				});
			}
		);	//layer end
	});


//	/**
//	 * 修改单个字典项
//	 */
//	var editDict = function(id) {
//		window.open('/Dict/editDict?id=' + id);
//	}
//
//
	/**
	 * 批量修改字典项
	 */
	$('#btn_batchEditDict').click(function() {
		//定义变量
		var id_list = [];

		//归集已选择的字典id
		$(':checkbox[name="dict[]"]:checked').each(function() {
			id_list.push($(this).val());
		});

		//如果没有选择任何字典项，则提示用户
		if (JSON.stringify(id_list) == '[]') {
			layer.alert('至少要选择一条记录');
			return false;
		}

		//把id_list转化为对象，用于序列化为url参数
		var data = {'id_list': id_list};
		//console.log($.param(data));

		//Success
		window.open('/Dict/batchEditDict?' + $.param(data));
	});


	/**
	 * 搜索ajax回调函数
	 */
	var callback = function(data) {
		if (200 == data.status) {
			if (!data.list) {
				$('#tbody_list').html('无数据');
			}
			var html = '';
			$.each(data.list, function(k, v) {
				html += '<tr>'
					+ '<td><input type="checkbox" name="dict[]" value="' + v.id + '" /></td>'
					+ '<td>' + v.code + '</td>'
					+ '<td>' + v.name + '</td>'
					+ '<td>' + v.type + '</td>'
					+ '<td>' + v.remark + '</td>'
					+ '<td><span><button type="button" onclick="editDict(' + v.id + ')" >修改</button></span>'
					+ '<span style="padding-left: 10px;">'
					+ '<button type="button" onclick="delDict(' + v.id + ')" >删除</button></span>'
					+ '</td>';
					+ '</tr>';
			});
			$('#tbody_list').html(html);
			$('#pager').jqPaginator('option', {totalCounts: data.cnt});
		} else {
			layer.alert(data.status + ': ' + data.msg);
		}
	}


	/**
	 * 搜索字典
	 */
	var searchPager = function(keyword) {
		if (!keyword) {
			keyword = '';
		}
		$('#pager').jqPaginator({
			totalCounts: 1,
			pageSize: pagesize,
			visiblePages: 10,
			currentPage: 1,
			onPageChange: function (page, type) {
				$.ajax({
					url: '/Dict/searchDict',
					method: 'post',
					async: true,
					data: {page: page, pagesize: this.pageSize,
						keyword: keyword},
					dataType: 'json',
					success: callback
				});
			}	//End: onPageChange
		});
	}


	/**
	 * 高级搜索字典
	 */
	var advanceSearchPager = function(param) {
		$('#pager').jqPaginator({
			totalCounts: 1,
			pageSize: pagesize,
			visiblePages: 10,
			currentPage: 1,
			onPageChange: function (page, type) {
				$.ajax({
					url: '/Dict/advanceSearchDict',
					method: 'post',
					async: true,
					data: param + '&' + $.param({page: page, pagesize: this.pageSize}),
					dataType: 'json',
					success: callback
				});
			}	//End: onPageChange
		});
	}


	/**
	 * 搜索字典
	 */
	$('#btn_search').click(function() {
		searchPager($('#keyword').val());
	});


	/**
	 * 高级搜索字典
	 */
	$('#btn_advanceSearch').click(function() {
		var param = $('#form_advance_search').serialize();
		console.log(param);
		advanceSearchPager(param);
	});


	//搜索分页
	searchPager();

});